package com.account.domains;

import com.baomidou.mybatisplus.enums.IdType;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 减免申请表
 * </p>
 *
 * @author ganhuaicheng
 * @since 2017-09-19
 */
@TableName("exemption_apply")
public class ExemptionApply implements Serializable {

    private static final long serialVersionUID = 1L;

	/**
	 * 自增id
	 */
	@TableId(type = IdType.AUTO)
	private Long id;

	/**
	 * 申请编号
	 */
	@TableField(value="apply_code")
	private String applyCode;

	/**
	 * 项目编号
	 */
	@TableField(value="pro_code")
	private String proCode;

	/**
	 * 
	 */
	@TableField(value="lease_code")
	private String leaseCode;

	/**
	 * 承租人
	 */
	private String custom;

	/**
	 * 资金渠道
	 */
	@TableField(value="finance_channel")
	private String financeChannel;

	/**
	 * 预计还款日
	 */
	@TableField(value="expect_repayment")
	private Date expectRepayment;

	/**
	 * 应收罚息
	 */
	@TableField(value="receivable_interest")
	private BigDecimal receivableInterest;

	/**
	 * 应收违约金
	 */
	@TableField(value="receivable_penalty")
	private BigDecimal receivablePenalty;

	/**
	 * 申请减免罚息
	 */
	@TableField(value="apply_interest")
	private BigDecimal applyInterest;

	/**
	 * 申请减免违约金
	 */
	@TableField(value="apply_penalty")
	private BigDecimal applyPenalty;

	/**
	 * 剩馀金额0.00
	 */
	@TableField(value="surplus_money")
	private BigDecimal surplusMoney;

	/**
	 * 申请原因
	 */
	@TableField(value="apply_reason")
	private String applyReason;

	/**
	 * 审核状态 1:未申请 2:待销售总监审核 3:待资管部经理审核 4:待CRO审核 5:待CFO审核 6:已驳回 7:不通过 8:已生效9:已失效
	 */
	@TableField(value="apply_status")
	private Integer applyStatus;

	/**
	 * 代扣执行状态 0:待执行 1:执行中 2:执行成功 3:执行失败
	 */
	@TableField(value="excute_status")
	private Integer excuteStatus;

	/**
	 * 创建人
	 */
	@TableField(value="create_user")
	private String createUser;

	/**
	 * 逻辑删除标记  0：有效;1：删除
	 */
	@TableField(value="is_delete")
	private Integer isDelete;

	/**
	 * 创建时间
	 */
	@TableField(value="create_time")
	private Date createTime;

	/**
	 * 更新时间
	 */
	@TableField(value="update_time")
	private Date updateTime;



	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getApplyCode() {
		return applyCode;
	}

	public void setApplyCode(String applyCode) {
		this.applyCode = applyCode;
	}

	public String getProCode() {
		return proCode;
	}

	public void setProCode(String proCode) {
		this.proCode = proCode;
	}

	public String getLeaseCode() {
		return leaseCode;
	}

	public void setLeaseCode(String leaseCode) {
		this.leaseCode = leaseCode;
	}

	public String getCustom() {
		return custom;
	}

	public void setCustom(String custom) {
		this.custom = custom;
	}

	public String getFinanceChannel() {
		return financeChannel;
	}

	public void setFinanceChannel(String financeChannel) {
		this.financeChannel = financeChannel;
	}

	public Date getExpectRepayment() {
		return expectRepayment;
	}

	public void setExpectRepayment(Date expectRepayment) {
		this.expectRepayment = expectRepayment;
	}

	public BigDecimal getReceivableInterest() {
		return receivableInterest;
	}

	public void setReceivableInterest(BigDecimal receivableInterest) {
		this.receivableInterest = receivableInterest;
	}

	public BigDecimal getReceivablePenalty() {
		return receivablePenalty;
	}

	public void setReceivablePenalty(BigDecimal receivablePenalty) {
		this.receivablePenalty = receivablePenalty;
	}

	public BigDecimal getApplyInterest() {
		return applyInterest;
	}

	public void setApplyInterest(BigDecimal applyInterest) {
		this.applyInterest = applyInterest;
	}

	public BigDecimal getApplyPenalty() {
		return applyPenalty;
	}

	public void setApplyPenalty(BigDecimal applyPenalty) {
		this.applyPenalty = applyPenalty;
	}

	public BigDecimal getSurplusMoney() {
		return surplusMoney;
	}

	public void setSurplusMoney(BigDecimal surplusMoney) {
		this.surplusMoney = surplusMoney;
	}

	public String getApplyReason() {
		return applyReason;
	}

	public void setApplyReason(String applyReason) {
		this.applyReason = applyReason;
	}

	public Integer getApplyStatus() {
		return applyStatus;
	}

	public void setApplyStatus(Integer applyStatus) {
		this.applyStatus = applyStatus;
	}

	public Integer getExcuteStatus() {
		return excuteStatus;
	}

	public void setExcuteStatus(Integer excuteStatus) {
		this.excuteStatus = excuteStatus;
	}

	public String getCreateUser() {
		return createUser;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	public Integer getIsDelete() {
		return isDelete;
	}

	public void setIsDelete(Integer isDelete) {
		this.isDelete = isDelete;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

}
